import api from '@/libs/api';
import http from '@/axios/http';
import router from '@/libs/router';

export default {
  install(Vue,options){
    // 公共返回方法
    Vue.prototype.goBack=()=>{
      history.back();
    };
    // 转json方法
    Vue.prototype.parseJSON=(data)=>{
      let res;
      try{
        res=JSON.parse(data);
      }catch(e){
        console.error('JSON parse error.');
        res=data;
      }
      return res;
    };
    // 数字计算
    Vue.prototype.calculate=(type,arg1S,arg2S)=>{
      let num,
          arg1,
          arg2;
      arg1=arg1S.toString().split('.')[0]+
        (arg1S.toString().split('.')[1]?
          '.'+(arg1S.toString().split('.')[1].length>=2?arg1S.toString().split('.')[1]:
          arg1S.toString().split('.')[1]+'0'):'');
      arg2=
        arg2S.toString().split('.')[0]+
        (arg2S.toString().split('.')[1]?
          '.'+(arg2S.toString().split('.')[1].length>=2?arg2S.toString().split('.')[1]:
          arg2S.toString().split('.')[1]+'0'):'');
      //console.log('arg1: '+arg1+' ,arg2: '+arg2);
      if(type=='add'){
        num=parseInt(arg1.toString().replace(".",""))+parseInt(arg2.toString().replace(".",""));
      }else if(type=='minus'){
        num=parseInt(arg1.toString().replace(".",""))-parseInt(arg2.toString().replace(".",""));
      }else if(type=='mul'){
        num=arg1.toString().replace(".","")*arg2.toString().replace(".","");
      }else{
        num=arg1.toString().replace(".","")/arg2.toString().replace(".","");
      }
      if(num<100){
        num=num/100;
      }else{
        num=num.toString().slice(0,num.toString().length-2)+'.'+num.toString().slice(num.toString().length-2);
      }
      return num;
    };
    //读取cookie
    Vue.prototype.getCookie=name=>{
      let arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
      if(arr=document.cookie.match(reg)){
        return unescape(arr[2]);
      }else{
        return null;
      }
    };
    //跳转详情
    Vue.prototype.gotoGoodsFn=(goods_sn)=>{
      http(api.goods_getbrand,{
        goods_sn:goods_sn
      }).then(res=>{
        switch(parseInt(res.data.ret,10)){
          case 0:
            if(res.data.data.type==4){
              router.push({name:'info_link',query:{goods_sn:goods_sn}});
            }else if(res.data.data.type!=1){
              router.push({name:'info_goods',query:{bid:res.data.data.bid,goodsSn:goods_sn,goodsType:res.data.data.type}});
            }else{
              router.push({name:'info_entity',query:{goods_sn:goods_sn}});
            }
            break;
          default:
            Toast(res.data.msg);
        };
      });
    };
    //是否微信
    Vue.prototype.isWeiXin=()=>{
      let ua=window.navigator.userAgent.toLowerCase();
      if(ua.match(/MicroMessenger/i)=='micromessenger'){
        return true;
      }else{
        return false;
      }
    };
  }
}
